home *** CD-ROM | disk | FTP | other *** search
-
-
- IEN-179
- March 11th, 1981
- Danny Cohen
- USC / ISI
-
- Addressing and Routing
- ----------------------
-
- There are several approaches to addressing such as hierarchical and
- flat, but there is only one approach to routing: Take the best (usually
- the shortest) path.
-
- The choice of addressing scheme which is both manageable and may support
- an efficient routing is the subject of this note.
-
- Hierarchical addressing is probably the easiest to manage. The universe
- is divided into some small number of units, and each of which is
- assigned an address which is some kind of a string, typically numeric
- but not necessarily so.
-
- If any of these units contains more than one member then the same
- process is repeated (iterated). The address of the subunit is appended
- somehow, typically to the end (but sometimes to the front) of the
- address of the parent unit.
-
- This hierarchy is easy to manage such that addresses are uniquely
- assigned.
-
- Typically in an hierarchy each unit is capable of communicating both
- with its ancestor and with all of its immediate descendants.
-
- A default routing can always be easily derived from an hierarchical
- address. This route consists of going up to a common ancestor (parent)
- and then down to the destination.
-
- Hence, an hierarchical address is always a route from the root (sorry
- about that).
-
- This default routing requires only N-1 communication links which is the
- minimal connectivity for N nodes.
-
- In this situation the default route is also the only existing route, up
- to trivial changes.
-
- In reality, for efficiency reasons, the connectivity is richer than
- that. Typically, brothers are in direct communication, and a "top"
- (root) may not exist at all.
-
- IEN-179 [Page 2]
-
-
-
- Because of the connectivity richness the routing process is non-trivial
- and requires that decisions be made.
-
- Routing is the process of chosing a possible communication link, where
- there is more than one.
-
- The other extreme of addressing is the flat space approach where
- locations have totally random dependency on their addresses, meaning
- that a fully instantiated table lookup must be used in order to locate
- an address.
-
- The important feature of flat and random addressing is that it can
- conveniently support mobile users.
-
- A simple, however expensive, way for implementing routing when flat
- addressing is used is by providing all the switches (where routing
- decisions have to be made) with tables containing all the required
- information about all the addresses.
-
- In the case of flat addressing it is required that all addresses be
- globally unique. It is not required however that all addresses be known
- to all the switching nodes, provided that nodes can ask for, and get,
- information about addresses which were not known to them.
-
- In the hierarchical case it is possible either that all addresses be
- specified in an absolute (complete) mode or in a relative (partial)
- mode. The former requires that all addresses be fully expanded, and
- have the same format regardless of where they are specified (e.g.,
- 1-213-822-1511x104), and the latter supports short forms for local
- addresses, at the possible expense of additional control information for
- remote addresses. The same address shown before may be specified as 104
- from inside ISI as 822-1511x104 from the STN at LA, as 9-822-1511x104
- from UCLA, as 213-822-1511x104 from Palo Alto or as
- 010-1-213-822-1511x104 from London. Similarly, intra-office memos do
- not require long addresses, and intra-country mail does not require the
- country name to be specified in the address.
-
- Any system which can handle perfectly flat addresses can take advantage
- of rich communication connectivity and can also handle multi-homing
- (destination with more than one address).
-
- An hierarchical addressing scheme which uses only the default
- hierarchical routing may have difficulties in handling efficiently rich
- connectivity and multi-homing.
-
- However, between these two extremes there is a wide spectrum of other
- possibilities.
-
- The claim of the rest of this paper is that (i) hierarchical addresses
- are easier to manage, and (ii) if you can handle flat addresses - you
- can handle hierarchical addresses even better.
-
- IEN-179 [Page 3]
-
-
-
- Hierarchical addressing is at least as good (in any respect) as flat one
- because flat addressing is a special case of hierarchical addressing,
- but not the other way round.
-
- Suppose that there is a system which can handle very well flat
- addressing. Since the only requirement for the flat addressing is that
- addresses are unique, one can assign unique addresses in any way, for
- example in a very structured way, like hierarchical. The introduction
- of hierarchical addresses to the flat addressing scheme should not
- degrade its performance since the uniqueness was not disturbed.
-
- Suppose further that all the addresses are examined at every switch.
- All addresses which result in the same routing decisions by both the
- flat addressing scheme and by the hierarchical addressing are marked,
- and the entries corresponding to them are removed from the flat
- addressing tables.
-
- This causes no degradation of the flat addressing scheme (which was
- assumed to be a good one to start with) since the hierarchical
- addressing yields the same routing decision for these addresses. This
- process repeats at all levels, and only the "GCD" addresses are stored.
-
- Hence, after removing these addresses the size of the tables decreases
- in all switches which probably may yield some performance improvement
- and increased capacities. In fact, the resulting scheme is now an
- hierarchical scheme with tables of exceptions which are handled in the
- best known way. The format of the exception table is discussed later.
-
- Note that this results in uneven distribution of knowledge. At different
- switches different set of destinations are known. For example, all the
- traffic to the East coast may be treated in the same way when being far
- away from there, but as the message approaches its destination, it is
- likely that the granularity of the address examination changes such that
- more details are used. When leaving Tokyo the only part of the address
- which was used for the routing was the fact that the message is
- addressed to the States. After arriving at California, the Boston
- traffic may be treated separately from the Washington traffic, later the
- Boston traffic is examined even closer to distinguish the Cambridge from
- the Lexington traffic, and later the MIT traffic is isolated from the
- Harvard and the BBN traffic. Upon entering MIT the traffic is sorted
- further to the appropriate local MIT net, and later to its terminal
- destination.
-
- This scheme allows the switches in Tokyo NOT to know about the internal
- structure of the addressing in the USA in general and at MIT in
- particular. It also helps the switches in California to take advantage
- of special HU (high utilization) trunks to the Boston area, if any.
-
- Since this hybrid contains both the flat and the hierarchical
- addressing, multi homing can be handled as well as by flat addressing.
-
- IEN-179 [Page 4]
-
-
-
- Another variant of this scheme is not to start with full tables of flat
- addresses (which are impossible to manage) but to treat the system as if
- it was a pure hierarchical one, but in addition to maintain a table of
- exception which is dynamically updated.
-
- The entries in these exception tables should include both addresses,
- their granularity level and the associated routing decision. If, for
- example, addresses always consist of a sequence of bytes (of any size)
- the granularity level may be measured by the number of bytes which are
- used.
-
- For example, a telephone exchange in Marina del Rey may know that the
- traffic for 1-213-828X and 1-213-821X is local, all the traffic for
- addresses 2X and 4X (Europe) should be routed to a certain cable which
- goes directly to Europe, the traffic to 1-212X be routed to a some cable
- which goes directly to NY, the traffic to either 1-617-49X or 1-617-253X
- should be routed to the HU trunk which goes to Cambridge, and similarly
- the traffic to 1-202-694-3049 should be given to a certain line which is
- connected to a certain destination, somewhere. All the rest of the
- traffic should be routed to downtown LA where smarter computers can
- solve the routing.
-
- In the above example the various entries have different levels of
- granularity, varying from 1 (in the case of Europe) to 11 (in the last
- example).
-
- Such a scheme yields tables of reasonable size, can benefit from any
- structure and logic/regularity (as opposed to randomness) of the
- communication subsystem, can handle multihoming, and has the capability
- to utilize special irregular HU lines and shortcuts.
-
- Note that in this scheme the addressing may be highly structured (e.g.,
- in a hierarchical way) but the routing is not necessarily so. The
- routing is hierarchical only when this is known to be the right thing,
- or when nothing else is known and the hierarchical routing is used as a
- default.
-
- In summary, this is a way to benefit from the simplicity of hierarchical
- routing whenever possible, while being able to use the flat-addressing
- features when needed, on a case-by-case basis, without the need to
- maintain tables of unreasonable size.
-
-